import req from './../../../../../fetch'; import { paramsToString, undocumentedResponse } from './../../../../../utils'; import { AllAPIResponses, AlarmHistoryType, CarbonError, } from './../../../../../index'; type ParamsType = { // end date to look for reactions (format is YYYY-MM-DD) (defaults to 24 hours after startTime). endDate?: string; ruleId: number; startTime: number; uniqueId: string; }; const get = async ( folderId: number, params: ParamsType ): Promise> => { try { const resp = await req.get( `/api/alarms/history/folder/${folderId}${paramsToString(params)}` ); const clone = resp.clone(); switch (resp.status) { case 200: return { data: (await resp.json()) as AlarmHistoryType, response: clone, }; case 400: case 401: case 403: case 500: return { error: (await resp.json()) as CarbonError, response: clone, }; default: return { error: new Error(undocumentedResponse(resp)), response: clone, }; } } catch (e) { return { error: e, response: undefined }; } }; export default get;